%!PS-Adobe-2.0
%%Title: diplomacy map (empire4 map)
%%Creator: mapit
%%Pages: (atend) 1
%%BoundingBox: 0 0 612 792
%%Orientation: Portrait
%%DocumentPaperSizes: Letter
%%EndComments

% INFO
% 346 329 ABI Abitibi
% 100 461 ANC Anchorage
% 464 83  ANT Antioquia
% 340 174 APB Apalachee Bay
% 178 212 ARI Arizona
% 294 212 ARK Arkansas
% 145 520 ARO Arctic Ocean
% 316 493 BAF Baffin Bay
% 161 170 BAJ Baja California
% 378 315 BEA Beauce
% 167 486 BEF Beaufort Sea
% 28  498 BER Bering Sea
% 444 195 BET Bermuda Triangle
% 481 60  BOG Bogota
% 456 63  CAL Cali
% 443 81  CAL/NC Cali (north coast)
% 445 51  CAL/SC Cali (south coast)
% 401 152 CAM Camaguey
% 402 158 CAM/NC Camaguey (north coast)
% 401 152 CAM/SC Camaguey (south coast)
% 410 137 CAT Cayman Trench
% 186 346 CGY Calgary
% 410 250 CHB Chesapeake Bay
% 195 172 CHH Chihuahua
% 306 251 CHI Chicago
% 296 92  CHP Chiapas
% 236 162 COA Coahuila
% 378 52  COB Coronado Bay
% 216 237 COL Colorado
% 240 69  COM Coast of Mexico
% 384 76  COS Costa Rica
% 386 81  COS/NC Costa Rica (north coast)
% 375 69  COS/SC Costa Rica (south coast)
% 378 355 COT Cote-Nord
% 245 282 DAK Dakotas
% 251 197 DAL Dallas
% 472 162 DOM Dominican Republic
% 320 201 DSO Deep South
% 214 145 DUR Durango
% 402 213 ECO East Coast
% 454 137 ECS East Caribbean Sea
% 446 32  ECU Ecuador
% 342 86  ELS El Salvador
% 344 189 FPA Florida Panhandle
% 341 14  GAL Galapagos
% 387 337 GAS Gaspesie
% 190 115 GCA Gulf of California
% 353 208 GEO Georgia
% 45  393 GOA Gulf of Alaska
% 292 127 GOC Gulf of Campeche
% 344 57  GOF Gulf of Fonseca
% 406 32  GOG Gulf of Guayaquil
% 355 120 GOH Gulf of Honduras
% 304 151 GOM Gulf of Mexico
% 403 95  GMO Gulf of Mosquitos
% 424 59  GOP Gulf of Panama
% 293 70  GOT Gulf of Tehuantepec
% 374 509 GRE Greenland
% 125 201 GSC Gulf of Santa Catalina
% 415 357 GSL Gulf of St-Lawrence
% 222 121 GUA Guadalajara
% 240 97  GUE Guerrero
% 460 107 GUJ Guajira
% 333 106 GUT Guatemala
% 333 106 GUT/EC Guatemala (east coast)
% 320 91  GUT/SC Guatemala (south coast)
% 448 151 HAI Haiti
% 377 149 HAV Havana
% 66  90  HAW Hawaii
% 419 150 HOL Holguin
% 360 101 HON Honduras
% 372 106 HON/NC Honduras (north coast)
% 353 92  HON/SC Honduras (south coast)
% 274 180 HOU Houston
% 294 384 HUB Hudson Bay
% 175 272 IDA Idaho
% 322 251 IND Indiana
% 281 260 IOW Iowa
% 370 195 JAC Jacksonville
% 257 235 KAN Kansas
% 334 240 KEN Kentucky
% 424 126 KIN Kingston
% 394 388 LAB Labrador
% 339 274 LER Lake Erie
% 481 150 LES Lesser Antilles
% 334 291 LHU Lake Huron
% 475 19  LIM Lima
% 314 273 LMI Lake Michigan
% 358 289 LON Lake Ontario
% 138 227 LAN Los Angeles
% 298 188 LOU Louisiana
% 309 303 LSU Lake Superior
% 430 300 MAB Massachusetts Bay
% 394 319 MAI Maine
% 254 352 MAN Manitoba
% 472 295 MAO Mid Atlantic Ocean
% 398 292 MAS Massachusetts
% 420 275 MAY Cape May
% 250 117 MEX Mexico
% 377 178 MIA Miami
% 326 279 MIC Michigan
% 294 282 MIL Milwaukee
% 305 282 MIL/EC Milwaukee (east coast)
% 288 289 MIL/NC Milwaukee (north coast)
% 271 282 MIN Minneapolis
% 288 240 MIS Missouri
% 358 311 MON Montreal
% 136 108 MPO Mid Pacific Ocean
% 198 292 MTA Montana
% 473 392 NAO North Atlantic Ocean
% 148 379 NBC Northern BC
% 402 335 NBR New Brunswick
% 402 335 NBR/NC New Brunswick (north coast)
% 404 325 NBR/SC New Brunswick (south coast)
% 374 236 NCA North Carolina
% 248 253 NEB Nebraska
% 154 248 NEV Nevada
% 431 371 NFL Newfoundland
% 376 90  NIC Nicaragua
% 378 97  NIC/EC Nicaragua (east coast)
% 363 84  NIC/WC Nicaragua (west coast)
% 390 272 NJE New Jersey
% 260 147 NLE Nuevo Leon
% 213 207 NME New Mexico
% 305 340 NON Northern Ontario
% 40  222 NPO North Pacific Ocean
% 417 336 NSC Nova Scotia
% 251 416 NUN Nunavut
% 185 414 NWT North West Territories
% 388 285 NYC New York City
% 372 293 NYS New York State
% 265 89  OAX Oaxaca
% 339 257 OHI Ohio
% 265 214 OKL Oklahoma
% 332 305 ONT Ontario
% 144 281 ORE Oregon
% 410 75  PAN Panama
% 370 277 PHI Philadelphia
% 248 133 POT Potosi
% 96 364  QCS Queen Charlotte Sound
% 369 331 QUE Quebec
% 259 165 SAN San Antonio
% 219 333 SAS Saskatchewan
% 365 222 SCA South Carolina
% 433 103 SCS South Caribbean Sea
% 151 212 SDI San Diego
% 127 253 SFR San Francisco
% 110 316 SJF Straits of Juan de Fuca
% 373 163 SOF Straits of Florida
% 390 430 SOL Sea of Labrador
% 479 235 SOS Sea of Sargasso
% 348 146 SOY Straits of Yucatan
% 177 27  SPO South Pacific Ocean
% 24  71  SWP South West Pacific Ocean
% 310 109 TAB Tabasco
% 364 187 TAM Tampa
% 326 226 TEN Tennessee
% 349 377 UNG Ungava
% 303 295 UPP Upper Peninsula
% 182 242 UTA Utah
% 149 339 VAN Vancouver
% 385 303 VEM Vermont
% 483 111 VEN Venezuela
% 279 110 VER Veracruz
% 485 87  VIC Vichada
% 370 251 VIR Virginia
% 151 303 WAS Washington
% 96  271 WCO West Coast
% 393 113 WCS West Caribbean Sea
% 384 260 WDC Washington DC
% 286 317 WON Western Ontario
% 357 269 WPA West Pennsylvania
% 229 184 WTE West Texas
% 352 250 WVA West Virginia
% 207 264 WYO Wyoming
% 333 127 YUC Yucatan
% 135 428 YUK Yukon
% MAP

% The original map postscript code is from William Roberts, 30/4/92
% modified by David A. Hall (davidahall@compuserve.com) for the Empire variant
% 6/22/98
% * modified by George Boyce for use with his mapit program, i.e.
% * this file provides the following procedures:
% *
% * DrawMap      draws the base map
% * DrawName     draws a province name
% * DrawArmy     draws an army
% * DrawFleet    draws a fleet
% * DrawTitle    write game title
% * DrawMessage  write a footnote/message
%
% * OrderReport   positions point to write order report
% * RetreatReport
% * OwnerReport
% * AdjustReport
% * StatusReport
%
% * WriteOrder   writes the order line
% * WriteRetreat
% * WriteOwner
% * WriteAdjust
% * WriteStatus
%
% * ArrowMove    draws arrow indicating a move order
% * ArrowHold
% * ArrowSupport
% * ArrowConvoy
% * ArrowRetreat
%
% * BuildUnit    draws ray around newly built unit
% * DestroyUnit  draws slash through destroyed unit
% * DisbandUnit
% * RemoveUnit
%

% constants:
  /NameOffset {LetterSize} def		% distance below point to draw name
  /UnitOffset 1.5 def			% distance above point to draw unit

  /TitleFontSize 16 def			% font size (Times-Roman)
  /MessageFontSize 6 def		% font size (Times-Roman)
  /NameFontSize 4 def			% font size (Helvetica-Bold)
  /OrderFontSize 7 def			% font size (Courier)
  /OwnerFontSize 6 def			% font size (Courier)
  /HeadLength 10 def			% of a move arrow head
  /HalfHeadThickness 5 2 div def	
  /HalfThickness 1 2 div def		% of a move/support/convoy arrow shaft
  /HoldCircle 10 def	% of a support hold arrow
  /MoveCircle 4 def	% of a support move arrow
  /ConvoyCircle 6 def	% of a convoy arrow

/ShowPage /showpage load def	% nothing special required

/OrderReport {	% to the right of the map
 maxx 5 add maxy 55 sub moveto
 /Courier findfont OrderFontSize scalefont setfont
} def
/RetreatReport { % at the right bottom of the map with a title in slightly larger font
 maxx 5 add miny 10 sub moveto
 /Courier-Bold findfont OrderFontSize 2 add scalefont setfont
 currentpoint OrderFontSize sub 2 sub (Retreat orders:) show moveto
 /Courier findfont OrderFontSize scalefont setfont
} def
/OwnerReport {	% below left half of map
 minx miny 10 sub moveto
 /Courier findfont OwnerFontSize scalefont setfont
} def
/AdjustReport {	% below owner report
 minx miny 80 sub moveto
 /Courier findfont OwnerFontSize scalefont setfont
} def
/StatusReport {	% in upper right corner of map
 maxx 70 sub maxy 40 sub moveto
 /Courier findfont OwnerFontSize scalefont setfont
} def

/Write { currentpoint 3 2 roll show moveto 0 FontSize neg rmoveto } def
/WriteOrder { /FontSize OrderFontSize def Write } def
/WriteRetreat { WriteOrder } def
/WriteOwner { /FontSize OwnerFontSize def Write } def
/WriteAdjust { WriteOwner } def
/WriteStatus { WriteOwner } def

% failed orders get dashed lines, good orders normal lines
/FailedOrder { [2] 1 setdash } def
/OkOrder { [] 0 setdash } def

/DrawTitle {
 maxx 5 add maxy 10 sub moveto
 /Times-Roman findfont TitleFontSize scalefont setfont
 currentpoint (DIPLOMACY) show moveto
 0 TitleFontSize neg rmoveto
 dup stringwidth pop 156 exch div dup 1 lt
	{ gsave 1 scale show grestore }{ pop show } ifelse
} def

/DrawMessage {
 minx maxy MessageFontSize add moveto
 /Times-Roman findfont MessageFontSize scalefont setfont
 show
} def

% draw an arrow indicating a move order between two points
/ArrowMove {
  /tipy exch def
  /tipx exch def
  /taily exch def
  /tailx exch def

  /dx tipx tailx sub def
  /dy tipy taily sub def
  /angle dy dx atan def
% positon origin at base of arrow with arrow point along x axis
  gsave
  tailx taily translate
  angle rotate
  /arrowlength dx dx mul dy dy mul add sqrt def
  /base arrowlength HeadLength sub def
  
  % if base of arrow is long enough, shorten it
  % e.g. which moves arrow start beyond support circle
  /x base LetterSize gt {/base base LetterSize sub def LetterSize /arrowlength arrowlength LetterSize sub def} {0} ifelse def
  % if base is still 5 or longer, shorten it some more
  % which makes arrow head touch support circle
  base LetterSize ge {/base base LetterSize sub def /arrowlength arrowlength LetterSize sub def} if

  x 0 translate

  newpath
  0 HalfThickness neg moveto
  base HalfThickness neg lineto
  base HalfHeadThickness neg lineto
  arrowlength 0 lineto
  base HalfHeadThickness lineto
  base HalfThickness lineto
  0 HalfThickness lineto
  closepath

  stroke

  grestore
} def

% draw an arrow indicating support of a unit holding at p1
/ArrowHold {
  /tipy exch def
  /tipx exch def
  /taily exch def
  /tailx exch def

  tailx taily tipx tipy HoldCircle ArrowCircle

} def

% draw arrow indicating support of a unit moving from p1 to p2
/ArrowSupport {
  /y2 exch def
  /x2 exch def
  /y1 exch def
  /x1 exch def
  /taily exch def
  /tailx exch def

% find midpoint of (x1,y1)-(x2,y2)
  /tipx x1 x2 min x1 x2 sub abs 2 div add def
  /tipy y1 y2 min y1 y2 sub abs 2 div add def

  tailx taily tipx tipy MoveCircle ArrowCircle

} def

% draw arrow indicating convoy of a unit moving from p1 to p2
/ArrowConvoy {
  /y2 exch def
  /x2 exch def
  /y1 exch def
  /x1 exch def
  /taily exch def
  /tailx exch def

% find midpoint of (x1,y1)-(x2,y2)
  /tipx x1 x2 min x1 x2 sub abs 2 div add def
  /tipy y1 y2 min y1 y2 sub abs 2 div add def
  tailx taily tipx tipy ConvoyCircle ArrowCircle

} def

% draw an arrow indicating a retreat order between two points
/ArrowRetreat {
  /tipy exch def
  /tipx exch def
  /taily exch def
  /tailx exch def

  /dx tipx tailx sub def
  /dy tipy taily sub def
  /angle dy dx atan def

% positon origin at base of arrow with arrow point along x axis
  gsave
  Red
  tailx taily translate
  angle rotate

  /arrowlength dx dx mul dy dy mul add sqrt def
  /base arrowlength HeadLength 2 mul HalfThickness HalfHeadThickness div sub sub def

  % if base of arrow is long enough, shorten it
  % e.g. which moves arrow start beyond support circle
  /x base LetterSize gt {/base base LetterSize sub def LetterSize /arrowlength arrowlength LetterSize sub def} {0} ifelse def
  % if base is still 5 or longer, shorten it some more
  % which makes arrow head touch support circle
  base LetterSize ge {/base base LetterSize sub def /arrowlength arrowlength LetterSize sub def} if

  /headBase arrowlength base add HalfThickness HalfHeadThickness div sub 2 div def

  x 0 translate

  newpath
  0 HalfThickness neg moveto
  base HalfThickness neg lineto
  base HalfHeadThickness neg lineto
  headBase HalfThickness neg lineto
  headBase HalfHeadThickness neg lineto
  arrowlength 0 lineto
  headBase HalfHeadThickness lineto
  headBase HalfThickness lineto
  base HalfHeadThickness lineto
  base HalfThickness lineto
  0 HalfThickness lineto
  closepath

  stroke

  grestore
} def

/ArrowCircle {	% like an arrow but with a circle at the tip
  /headdiam exch def
  /tipy exch def
  /tipx exch def
  /taily exch def
  /tailx exch def

  /dx tipx tailx sub def
  /dy tipy taily sub def
  /arrowlength dx dx mul dy dy mul add sqrt def
  /angle dy dx atan def
  /base arrowlength headdiam sub def

% positon origin at base of arrow with arrow point along x axis
  gsave
  tailx taily translate
  angle rotate

  % if base of arrow is long enough, shorten it by LetterSize
  % e.g. which moves arrow start beyond support circle
  /x base LetterSize gt {/base base LetterSize sub def /arrowlength arrowlength LetterSize sub def LetterSize} {0} ifelse def

  x 0 translate

% draw the shaft first...
  base HalfThickness neg moveto
  0 HalfThickness neg lineto
  0 HalfThickness lineto
  base HalfThickness lineto
% now the circle...
  /a 180 HalfThickness headdiam 2 div atan sub def
  /b 180 HalfThickness headdiam 2 div atan add def
  arrowlength 0 headdiam a b arcn
  closepath
  stroke
  grestore
} def

% draw the given name centered just below the specified point
/DrawName { % x y str => -
 gsave
 /Helvetica-Bold findfont NameFontSize scalefont setfont
 3 1 roll translate
% mark the spot...
% 0 0 5 0 360 arc fill
 dup stringwidth pop
 -2 div 0 NameOffset sub moveto show
 grestore
} def

% Letters for the different countries
%
% 0 means "nobody", then 1-10 ordered alphabetically as in judge info file
/Countries [
  (?) (B) (C) (F) (H) (N) (P) (Q) (T) (U) (X)
] def

/country 0 def
/Black { 0 setgray } bind def
/White { 1 setgray } bind def
/Grey  { 0.7 setgray } bind def
/Red    {   1   0   0 setrgbcolor } bind def
/Green  {   0   1   0 setrgbcolor } bind def
/Blue   {   0   0   1 setrgbcolor } bind def
/Purple {   1   0   1 setrgbcolor } bind def
/Yellow {   1   1   0 setrgbcolor } bind def
/Cyan	{   0   1   1 setrgbcolor } bind def
/Orange {   1 0.6   0 setrgbcolor } bind def
/Brown  { 0.6 .45 0.2 setrgbcolor } bind def
/Pink	{ 0.8 0.5 0.5 setrgbcolor } bind def


% Piece colourname, Contrast colourname
%
/UnownedColors    { /Brown /White } def
/BCColors         { /White /Black } def
/CaliforniaColors { /Purple /Black } def
/FloridaColors    { /Orange /Black } def
/HeartlandColors  { /Black /White } def
/NewYorkColors    { /Green /Black } def
/PeruColors       { /Grey /Black } def
/QuebecColors     { /Cyan /Black } def
/TexasColors      { /Blue /White } def
/CubaColors       { /Red /White } def
/MexicoColors     { /Yellow /Black } def

/set_country { % N /piececolour /contrast => -
    load /Contrast exch store
    load /PieceColour exch store
    /country exch store
} bind def

/UNOWNED    { 0 UnownedColors set_country } def
/BC         { 1 BCColors set_country } def
/CALIFORNIA { 2 CaliforniaColors   set_country } def
/FLORIDA    { 3 FloridaColors  set_country } def
/HEARTLAND  { 4 HeartlandColors set_country } def
/NEWYORK    { 5 NewYorkColors   set_country } def
/PERU       { 6 PeruColors  set_country } def
/QUEBEC     { 7 QuebecColors  set_country } def
/TEXAS      { 8 TexasColors   set_country } def
/CUBA       { 9 CubaColors  set_country } def
/MEXICO     { 10 MexicoColors set_country } def 

/Offsets 11 array def

/max { % p q => max(p,q)
  2 copy lt { exch} if pop
} bind def

/min { % p q => min(p,q)
  2 copy gt { exch} if pop
} bind def

/InitLetters {
  0 0				% maxdx maxdy
  0 1 10 {
    /N exch def
    Countries N get	% maxdx maxdy (N)
    newpath 0 0 moveto
    true charpath pathbbox     % ... llx lly urx ury
    %
    % Compute the offset in to centre the letter at 0,0
       4 copy		% llx lly urx ury
       3 -1 roll add -2 div	% llx urx dy
       3 1 roll add -2 div	% dy dx
       exch 2 array astore	% [dx,dy]
       Offsets N 3 -1 roll put  % - ([dx,dy] stored in offsets)
    %
    % Update maximum xwidth, ywidth
    3 -1 roll sub		% llx urx leny
    3 1 roll exch sub exch	% lenx leny
    				% maxdx maxdy lenx leny
    3 -1 roll max		% maxdx lenx newmaxdy
    3 1 roll max		% newmaxdy newmaxdx    exch
  } for

  newpath
  % maxdx maxdy = biggest bounding rectangle of the letters
  max 1.5 mul /LetterSize exch def
} def

/Helvetica-Bold findfont NameFontSize scalefont setfont InitLetters

/PieceColour { 1 setgray } bind def
/Contrast { 0 setgray } bind def

% Army is a little cannon...
/DrawArmy { % x y X => -
  country
  3 1 roll UnitOffset add
  gsave translate
    gsave 
      newpath
      LetterSize 14 div dup scale
      -20 7 moveto 30 0 rlineto 0 -4 rlineto 4 0 rlineto
       0 -2 rlineto -30 0 rlineto 0  2 rlineto -4 0 rlineto
       0 4 rlineto		% barrel
       4 2 moveto 20 -10 rlineto 2 0 rlineto -8 0 rlineto
      -20  10 rlineto		% carriage
      Contrast 2 setlinewidth stroke
      0 0 9 0 360 arc	% wheel
      closepath
      Contrast 2 setlinewidth stroke
      newpath
      -20 7 moveto 30 0 rlineto 0 -4 rlineto 4 0 rlineto
       0 -2 rlineto -30 0 rlineto 0  2 rlineto -4 0 rlineto
       0 4 rlineto		% barrel
       4 2 moveto 20 -10 rlineto 2 0 rlineto -8 0 rlineto
      -20  10 rlineto		% carriage
      PieceColour fill
      0 0 9 0 360 arc	% wheel
      closepath
      PieceColour fill
    grestore
    dup Offsets exch get aload pop	% N dx dy
    moveto
    /Helvetica-Bold findfont NameFontSize scalefont setfont
    Countries exch get Contrast show	% then a white letter
  grestore
} bind def

% Fleet is a little boat...
/DrawFleet { % N x y => -
  country
  3 1 roll UnitOffset add
  gsave translate
    gsave 
      newpath
      LetterSize 14 div dup scale
      -26 -7 moveto 0 5 rlineto 7 0 rlineto 0 1 rlineto		% to bow
      -3 0 rlineto 0 1 rlineto 7 0 rlineto 0 1 rlineto		% A turret
      -3 0 rlineto 0 1 rlineto 8 0 rlineto 0 -2 rlineto		% B turret
      1 0 rlineto 0 4 rlineto 1 0 rlineto 0 2 rlineto		% conn tower
      2 0 rlineto 0 -1 rlineto 1 0 rlineto 0 4 rlineto		% Infra struct
      2 0 rlineto 0 5 rlineto 1 0 rlineto 0 -5 rlineto		% funnel 1
      2 0 rlineto 0 -4 rlineto 1 0 rlineto 0 3 rlineto		% funnel 2
      2 0 rlineto 0 5 rlineto 1 0 rlineto 0 -5 rlineto		% mast 2
      2 0 rlineto 0 -8 rlineto 2 0 rlineto 0 2 rlineto		% funnel 2
      8 0 rlineto 0 -1 rlineto -3 0 rlineto 0 -1 rlineto	% C turret
      7 0 rlineto 0 -1 rlineto -3 0 rlineto 0 -1 rlineto	% D turret
      6 0 rlineto 0 -1 rlineto 2 0 rlineto 0 -2 rlineto		% stern
      -1 0 rlineto 0 -2 rlineto
      closepath
      gsave Contrast 2 setlinewidth stroke grestore
      PieceColour fill
    grestore
    dup Offsets exch get aload pop	% N dx dy
    moveto
    /Helvetica-Bold findfont NameFontSize scalefont setfont
    Countries exch get Contrast show	% then a white letter
  grestore
} bind def

% draw a ray around a newly built unit
/BuildUnit { % x y => -
  gsave
  UnitOffset add translate
  LetterSize 14 div dup scale
  White
  6 setlinewidth [ 1 8 ] 0 setdash
  newpath
  0 0 24 0 360 arc
  closepath stroke
  grestore
} bind def

% draw a slash through a unit
/SlashUnit { % x y => -
  UnitOffset add translate
  LetterSize 14 div dup scale
  newpath
  -21 -16 moveto
  -5 0 lineto -21 16 lineto -11 16 lineto 0 5 lineto
  11 16 lineto
  21 16 lineto
  5 0 lineto 21 -16 lineto 11 -16 lineto 0 -5 lineto
  -11 -16 lineto
  closepath
  fill
} bind def

% draw a slash through a destroyed unit
/DestroyUnit { % x y => -
  gsave
  Black SlashUnit
  grestore
} bind def

% draw a slash through a disbanded unit
/DisbandUnit { % x y => -
  gsave
  Red SlashUnit
  grestore
} bind def

% draw a slash through a removed unit
/RemoveUnit { % x y => -
  gsave
  White SlashUnit
  grestore
} bind def

/DrawMap {
15 275 translate
0.9 dup scale		% reduce the size by 10%

Landcolour minx miny maxx minx sub maxy miny sub rectfill
saCoast caSCoast mexWCoast usaWCoast canWCoast
canNCoast canECoast usaECoast mexECoast caNCoast
saInternal caInternal mexInternal usaMexBorder usaWInternal
usaSEInternal usaNEInternal usaCanBorder canInternal 
southPacific northPacific arctic atlantic caribbean cuba stLawrence mississippi

lastborder
docenters

% give credits
%Credits

Black
} def

/Credits {
/Times-Roman findfont 6 scalefont setfont
8 50 moveto
currentpoint (Electronic map design by William Roberts,) show
moveto 0 -6 rmoveto
currentpoint (modified by David A. Hall for Empire variant.) show
moveto 0 -12 rmoveto
currentpoint (Map drawn by mapit, public domain software) show
moveto 0 -6 rmoveto
currentpoint (written by George Boyce, 1992) show
moveto 0 -12 rmoveto
currentpoint (Diplomacy is a trademark of the Avalon Hill Game Company,) show
moveto 0 -6 rmoveto
(Baltimore, Maryland, all rights reserved.) show
} def


/minx 0 def /maxx 494 def	
/miny 0 def /maxy 532 def

/gm /moveto load def
/lin /lineto load def

/internal { gsave Internalborder stroke grestore newpath } def
/BORDER   { gsave Nationalborder stroke grestore newpath} def
/waterconnect  { gsave ConnectingLine Seacolour stroke grestore newpath} def
/landconnect  { gsave ConnectingLine Black stroke grestore newpath} def
/RIVER    { gsave Seacolour
% Coastcolour
stroke grestore newpath} def

/lastborder { 
  gsave
    % frame 
    minx miny moveto
    minx maxy lineto
    maxx maxy lineto
    maxx miny lineto
    closepath
    [] 0 setdash 0 setgray
    gsave 4 setlinewidth stroke grestore
    clip 2 setlinewidth Landcolour stroke
  grestore
} def

/buffer 255 string def

/SEA {
    closepath
    gsave Seacolour fill grestore
    gsave Coastcolour stroke grestore
    newpath
} def

/ISLAND {
    closepath
    gsave Landcolour fill grestore
    gsave Coastcolour stroke grestore
    newpath
} def
/SWITZERLAND {
    closepath
    gsave Swisscolour fill grestore
    BORDER
} def

1 setlinewidth
0 setgray
%/Seacolour { 0.9 setgray } def
/Seacolour { 0.1 0.4 0.6 setrgbcolor } bind def
/Landcolour { 0.8 0.7 0.4 setrgbcolor } bind def
/Coastcolour { 1 setlinewidth 0 setgray } def
/Swisscolour { 0.5 setgray } def
/Internalborder { 0.3 setlinewidth 0 setgray } def
/Nationalborder { 2 setlinewidth 0 setgray } def
/ConnectingLine { 0.7 setlinewidth [1 1] 1 setdash } def
/supply {
  gsave translate
  newpath
    0 0 2 0 360 arc
    PieceColour fill
  grestore
} def

/ANC {  94 436 } def
/ARI { 169 204 } def
/BOG { 472  70 } def
/CAL { 450  72 } def
/CGY { 192 323 } def
/CHH { 213 163 } def
/CHI { 309 264 } def
/COL { 222 243 } def
/DAL { 263 195 } def
/DOM { 461 164 } def
/DUR { 221 153 } def
/GEO { 344 216 } def
/GRE { 398 475 } def
/GUA { 225 111 } def
/GUT { 330  97 } def
/HAV { 385 156 } def
/HAW {  74  97 } def
/HOL { 426 158 } def
/HOU { 283 181 } def
/JAC { 363 201 } def
/KAN { 270 231 } def
/KIN { 432 131 } def
/LIM { 456   7 } def
/LAN { 136 220 } def
/LOU { 311 184 } def
/MAN { 262 312 } def
/MAS { 392 296 } def
/MEX { 258 109 } def
/MIA { 382 176 } def
/MIC { 328 271 } def
/MIL { 301 275 } def
/MIN { 278 277 } def
/MIS { 298 240 } def
/MON { 367 316 } def
/NCA { 362 234 } def
/NIC { 369  90 } def
/NJE { 381 279 } def
/NLE { 250 156 } def
/NSC { 415 329 } def
/NYC { 379 285 } def
/OHI { 337 266 } def
/ONT { 353 297 } def
/ORE { 131 289 } def
/PAN { 426  86 } def
/PHI { 376 272 } def
/QUE { 374 324 } def
/SAN { 256 178 } def
/SDI { 145 208 } def
/SFR { 124 242 } def
/TAM { 369 180 } def
/TEN { 311 222 } def
/UNG { 351 397 } def
/VAN { 143 324 } def
/VEN { 488 123 } def
/VER { 269 120 } def
/WAS { 137 306 } def
/WDC { 375 264 } def
/YUC { 323 119 } def


/docenters {
    UNOWNED
    ANC supply
    ARI supply
    BOG supply
    CAL supply
    CGY supply
    CHH supply
    CHI supply
    COL supply
    DAL supply
    DOM supply
    DUR supply
    GEO supply
    GRE supply
    GUA supply
    GUT supply
    HAV supply
    HAW supply
    HOL supply
    HOU supply
    JAC supply
    KAN supply
    KIN supply
    LIM supply
    LAN supply
    LOU supply
    MAN supply
    MAS supply
    MEX supply
    MIA supply
    MIC supply
    MIL supply
    MIN supply
    MIS supply
    MON supply
    NCA supply
    NIC supply
    NJE supply
    NLE supply
    NSC supply
    NYC supply
    OHI supply
    ONT supply
    ORE supply
    PAN supply
    PHI supply
    QUE supply
    SAN supply
    SDI supply
    SFR supply
    TAM supply
    TEN supply
    UNG supply
    VAN supply
    VEN supply
    VER supply
    WAS supply
    WDC supply
    YUC supply
} def


%
% Map starts here <???>
%


% South America


/saCoast {
    % South American Coastline
    454   0 gm  % GAL | LIM 
    448   3 lin
    433   3 lin
    428  10 lin % LIM ^ GOG ^ GAL
    436  18 lin % LIM ^ GOG ^ ECU
    439  20 lin % GOG | ECU
    437  24 lin
    429  22 lin    427  29 lin
    431  32 lin
    431  40 lin
    440  47 lin % ECU ^ GOG ^ CAL
    442  53 lin % CAL ^ GOG ^ GOP
    450  63 lin % GOP | CAL
    438  79 lin % CAL ^ GOP ^ PAN
    432  84 lin % GOP | PAN
    418  84 lin % GOMO | PAN
    422  88 lin % PAN ^ GOMO ^ SCS
    425  90 lin % SCS | PAN
    439  90 lin % PAN ^ SCS ^ CAL
    443  86 lin % CAL ^ SCS ^ ANT
    449  97 lin % ANT ^ SCS ^ GUJ
    448 103 lin % SCS | GUJ
    452 108 lin
    463 115 lin
    473 128 lin
    473 120 lin % GUJ ^ SCS ^ VEN
    478 118 lin % SCS | VEN
    476 111 lin
    483 110 lin
    484 114 lin
    479 119 lin
    483 124 lin % VEN ^ SCS ^ ECS
    485 128 lin % ECS | VEN
    486 132 lin % VEN ^ SCS ^ LES
    491 128 lin % LES | VEN
    494 128 lin
    maxx maxy lin % to fill in the ocean
    minx maxy lin
    minx miny lin
    SEA
} def

/saInternal {
    % Internal Border: LIM|ECU - VEN|VIC
    436  18 gm  % LIM ^ GOG ^ ECU
    437  15 lin % LIM | ECU
    450  15 lin
    456  27 lin
    470  38 lin
    475  47 lin
    470  51 lin % LIM ^ ECU ^ BOG
    462  49 lin % ECU ^ CAL ^ BOG
    467  73 lin % CAL ^ ANT ^ BOG
    474  75 lin % ANT ^ VIC ^ BOG
    475  83 lin % ANT | VIC
    482  89 lin
    471  90 lin
    466  94 lin % ANT ^ GUJ ^ VIC
    471  96 lin % GUJ | VEN
    473 105 lin % GUJ ^ VEN ^ VIC
    478 102 lin
    479  98 lin
    494 102 lin
    internal

    440  47 gm  % ECU ^ GOG ^ CAL
    452  47 lin % ECU | CAL
    462  49 lin % ECU ^ CAL ^ BOG
    internal

    438  79 gm  % CAL ^ GOP ^ PAN
    439  88 lin % PAN ^ SCS ^ CAL
    internal

    443  86 gm  % CAL ^ SCS ^ ANT
    449  77 lin % CAL | ANT
    467  73 lin % CAL ^ ANT ^ BOG
    internal

    449  97 gm  % ANT ^ SCS ^ GUJ
    466  94 lin % ANT ^ GUJ ^ VIC
    internal

    473 120 gm  % GUJ ^ SCS ^ VEN
    468 104 lin % GUJ | VEN
    473 105 lin % GUJ ^ VEN ^ VIC
    internal

    474  75 gm  % ANT ^ VIC ^ BOG
    494  77 lin % VIC | BOG
    internal

    470  51 gm  % LIM ^ ECU ^ BOG
    477  52 lin % LIM | BOG
    494  49 lin
    internal
} def


% Central America

/caSCoast {
    %Central America (South Coast)
    418  80 gm  % PAN ^ GOP ^ GOMO
    415  76 lin % GOP | PAN
    421  71 lin
    413  67 lin
    404  69 lin % PAN ^ GOP ^ COB
    395  67 lin % PAN ^ COB ^ COS
    374  71 lin % COB | COS
    376  68 lin
    368  74 lin
    368  82 lin % NIC ^ COS ^ COB
    359  83 lin % NIC ^ COB ^ GOF
    358  86 lin % GOF | NIC
    353  89 lin % HON ^ NIC ^ GOF
    349  91 lin % HON ^ ELS ^ GOF
    346  86 lin % GOF | ELS
    338  86 lin % GOF ^ ELS ^ COM
    330  86 lin % COM ^ ELS ^ GUT
    325  87 lin % COM ^ GUT ^ GOT
    315  86 lin % GOT ^ GUT ^ CHP
} def


/caNCoast {
    % Central America (North Coast & internal)
    340 118 lin % GUT ^ YUC ^ GOH
    340 105 lin % GOH | GUT
    342 100 lin % GOH ^ GUT ^ HON
    370 110 lin % GOH ^ HON ^ WCS
    383 107 lin % WCS ^ HON ^ NIC
    382 100 lin % WCS ^ NIC ^ GOMO
    385  84 lin % NIC ^ COS ^ GOMO
    395  79 lin % COS ^ PAN ^ GOMO
    400  78 lin % GOMO | PAN
    414  83 lin
    ISLAND
} def


/caInternal {
    315  86 gm  % GOT ^ GUT ^ CHP
    315  98 lin % GUT ^ CHP ^ TAB
    325 101 lin % GUT | TAB
    319 109 lin % GUT ^ TAB ^ YUC
    340 118 lin % GUT ^ YUC ^ GOH
    internal

    395  67 gm  % PAN ^ COB ^ COS
    395  79 lin % COS ^ PAN ^ GOMO
    internal

    368  82 gm  % NIC ^ COS ^ COB
    385  84 lin % NIC ^ COS ^ GOMO
    internal

    353  89 gm  % HON ^ NIC ^ GOF
    383 107 lin % WCS ^ HON ^ NIC
    internal

    330  86 gm  % COM ^ ELS ^ GUT
    336  94 lin % ELS ^ GUT ^ HON
    342 100 lin % GOH ^ GUT ^ HON
    internal

    349  91 gm  % HON ^ ELS ^ GOF
    348  93 lin % HON | ELS
    336  94 lin % ELS ^ GUT ^ HON
    internal
} def


% Mexico

/mexWCoast {
    % Mexico (West Coast)
    295  92 lin % GOT | CHP
    282  89 lin % GOT ^ CHP ^ OAX
    276  87 lin % GOT ^ COM ^ OAX
    254  92 lin % COM ^ OAX ^ GUE
    228 101 lin % COM ^ GUE ^ GUA
    210 115 lin % COM ^ GUA ^ GCA
    212 121 lin % GCA | GUA
    212 128 lin
    209 131 lin % GCA ^ GUA ^ DUR
    189 154 lin % GCA | DUR
    189 159 lin % GCA ^ DUR ^ CHH
    169 180 lin % GCA ^ CHH ^ BAJ
    165 193 lin % GCA | BAJ
    155 199 lin
    157 185 lin
    171 161 lin
    175 147 lin
    183 138 lin
    178 137 lin
    171 146 lin % GCA ^ BAJ ^ MPO
    169 149 lin % MPO | BAJ
    166 149 lin
    166 156 lin
    157 158 lin
    152 165 lin
    147 172 lin % MPO ^ NPO ^ BAJ
    153 170 lin % NPO | BAJ
    154 177 lin
    147 187 lin
    146 191 lin % NPO ^ GSC ^ BAJ
    142 205 lin % GSC ^ BAJ ^ SDI
} def


/mexECoast {
    268 143 lin % NLE ^ GOM ^ GOC
    267 132 lin % NLE ^ GOC ^ POT
    270 125 lin % POT ^ GOC ^ VER
    281 114 lin % GOC | VER
    298 112 lin % GOC ^ VER ^ TAB
    315 116 lin % GOC ^ TAB ^ YUC
    320 130 lin % GOC ^ YUC ^ GOM
    336 135 lin % YUC ^ GOM ^ SOY
    344 138 lin % SOY | YUC
    347 135 lin
    344 128 lin % SOY ^ YUC ^ GOH
    343 118 lin
} def


/mexInternal {
    177 191 gm  % BAJ ^ ARI ^ CHH
    169 180 lin % GCA ^ CHH ^ BAJ
    internal

    189 159 gm  % GCA ^ DUR ^ CHH
    221 159 lin % DUR ^ CHH ^ COA
    231 153 lin % DUR | COA
    231 145 lin % DUR ^ COA ^ POT
    224 139 lin % DUR ^ POT ^ GUA
    236 134 lin % POT | GUA
    236 125 lin % POT ^ GUA ^ MEX
    260 125 lin % POT ^ MEX ^ VER
    267 103 lin % MEX ^ VER ^ OAX
    279  99 lin % VER ^ OAX ^ CHP
    298 105 lin % VER ^ CHP ^ TAB
    315  98 lin % GUT ^ CHP ^ TAB
    internal

    224 174 gm  % CHH ^ WTE ^ COA
    221 159 lin % DUR ^ CHH ^ COA
    internal

    209 131 gm  % GCA ^ GUA ^ DUR
    224 139 lin % DUR ^ POT ^ GUA
    internal

    250 163 gm  % COA ^ SAN ^ NLE
    237 142 lin % COA ^ NLE ^ POT
    231 145 lin % DUR ^ COA ^ POT
    internal

    237 142 gm  % COA ^ NLE ^ POT
    267 132 lin % NLE ^ GOC ^ POT
    internal

    260 125 gm  % POT ^ MEX ^ VER
    270 125 lin % POT ^ GOC ^ VER
    internal

    298 105 gm  % VER ^ CHP ^ TAB
    298 112 lin % GOC ^ VER ^ TAB
    internal

    315 116 gm  % GOC ^ TAB ^ YUC
    319 109 lin % GUT ^ TAB ^ YUC
    internal

    236 125 gm  % POT ^ GUA ^ MEX
    232 114 lin % GUA ^ MEX ^ GUE
    254 105 lin % MEX ^ GUE ^ OAX
    267 103 lin % MEX ^ VER ^ OAX
    internal

    279  99 gm  % VER ^ OAX ^ CHP
    282  89 lin % GOT ^ CHP ^ OAX
    internal

    254 105 gm  % MEX ^ GUE ^ OAX
    254  92 lin % COM ^ OAX ^ GUE
    internal

    228 101 gm  % COM ^ GUE ^ GUA
    232 114 lin % GUA ^ MEX ^ GUE
    internal
} def


% United States


/usaMexBorder {
    142 205 gm  % GSC ^ BAJ ^ SDI
    158 203 lin % BAJ ^ SDI ^ ARI
    177 191 lin % BAJ ^ ARI ^ CHH
    189 189 lin % ARI | CHH
    194 189 lin % ARI ^ CHH ^ NME
    197 189 lin % CHH | NME
    197 192 lin
    207 192 lin % CHH ^ NME ^ WTE
    218 182 lin % CHH | WTE
    224 174 lin % CHH ^ WTE ^ COA
    227 171 lin % COA | WTE
    230 171 lin
    233 177 lin
    242 175 lin % COA ^ WTE ^ SAN
    250 163 lin % COA ^ SAN ^ NLE
    256 156 lin % SAN | NLE
    269 154 lin % SAN ^ NLE ^ GOM
    internal
} def


/usaWCoast {
    141 211 lin % GSC | SDI
    140 213 lin % GSC ^ SDI ^ LAN
    136 217 lin % GSC | LAN
    132 217 lin
    131 221 lin
    125 221 lin % GSC ^ LAN ^ WCO
    125 229 lin % WCO | LAN
    122 235 lin % WCO ^ LAN ^ SFR
    121 239 lin % WCO | SFR
    123 241 lin
    120 241 lin
    119 247 lin
    116 254 lin
    115 266 lin
    119 277 lin % WCO ^ SFR ^ ORE
    120 283 lin % WCO | ORE
    126 291 lin % WCO ^ ORE ^ SJF
    130 303 lin % ORE ^ SJF ^ WAS
    133 312 lin % SJF | WAS
    131 318 lin
    140 314 lin
    141 311 lin
    142 319 lin % WAS ^ VAN ^ SJF
} def

/usaCanBorder {
    142 319 gm  % WAS ^ VAN ^ SJF
    168 313 lin % WAS ^ VAN ^ IDA
    172 312 lin % VAN ^ IDA ^ MTA
    180 310 lin % VAN ^ MTA ^ CGY
    199 307 lin % MTA ^ CGY ^ SAS
    227 305 lin % MTA ^ SAS ^ DAK
    240 305 lin % SAS ^ DAK ^ MAN
    258 306 lin % DAK ^ MAN ^ MIN
    267 306 lin % MAN | MIN
    267 309 lin % MAN ^ MIN ^ WON
    269 308 lin % MIN | WON
    269 304 lin
    274 303 lin
    279 305 lin
    285 302 lin
    294 303 lin % MIN ^ WON ^ LSU
    internal

    369 305 gm  % ONT ^ BEA ^ NYS
    375 308 lin % BEA ^ NYS ^ VEM
    382 312 lin % BEA | VEM
    383 314 lin % BEA ^ VEM ^ MAI
    386 319 lin % BEA | MAI
    385 322 lin
    384 326 lin % BEA ^ MAI ^ GAS
    385 332 lin % GAS | MAI
    387 331 lin
    389 333 lin
    392 333 lin % GAS ^ MAI ^ NBR
    397 325 lin % NBR | MAI
    399 325 lin
    400 322 lin
    402 323 lin % NBR ^ MAI ^ MAB
    internal
} def


/stLawrence {   
    381 334 gm  % GAS ^ QUE ^ GAS
    380 327 lin % GAS ^ QUE ^ BEA
    377 322 lin % QUE | BEA
    375 320 lin % QUE ^ BEA ^ MON
    371 309 lin % MON ^ BEA ^ ONT
    369 305 lin % ONT ^ BEA ^ NYS
    365 302 lin % ONT | NYS
    363 296 lin % ONT ^ NYS ^ LON
    RIVER

    % Lake Ontario
    363 296 gm  % ONT ^ NYS ^ LON
    365 293 lin % LON | NYS
    360 289 lin
    354 288 lin
    352 285 lin % ONT ^ NYS ^ LON
    348 285 lin % LON | ONT
    349 289 lin
    357 294 lin
    360 292 lin
    SEA

    352 285 gm  % ONT ^ NYS ^ LON
    352 282 lin % ONT ^ NYS ^ LER
    RIVER

    % Lake Erie
    352 282 gm  % ONT ^ NYS ^ LER
    351 279 lin % NYS ^ LER ^ WPA
    348 274 lin % LER ^ WPA ^ OHI
    346 273 lin % LER | OHI
    344 270 lin
    341 268 lin
    336 268 lin
    333 269 lin % LER ^ OHI ^ MIC
    334 272 lin % LER ^ MIC ^ ONT
    336 273 lin % LER | ONT
    342 278 lin
    347 279 lin
    348 281 lin
    SEA

    334 272 gm  % LER ^ MIC ^ ONT
    336 279 lin % MIC ^ ONT ^ LHU
    RIVER

    % Lake Huron/Lake Michigan
    336 279 gm  % MIC ^ ONT ^ LHU
    339 282 lin % LHU | ONT
    338 288 lin
    339 292 lin
    338 294 lin
    340 293 lin
    345 292 lin
    344 295 lin
    340 299 lin
    337 300 lin
    332 300 lin
    333 296 lin
    329 298 lin
    325 298 lin
    321 297 lin % LHU ^ ONT ^ UPP
    319 296 lin % UPP ^ LMI ^ LHU
    312 293 lin % LMI | UPP
    308 290 lin
    307 285 lin % UPP ^ MIL ^ LMI
    310 288 lin
    309 283 lin
    308 276 lin
    310 268 lin % MIL ^ LMI ^ CHI
    313 263 lin % LMI ^ CHI ^ IND
    316 265 lin % LMI ^ IND ^ MIC
    318 268 lin % LMI | MIC
    318 273 lin
    314 279 lin
    315 286 lin
    317 288 lin
    319 293 lin
    321 294 lin % LMI ^ MIC ^ LHU
    328 291 lin % LHU | MIC
    329 287 lin
    327 282 lin
    329 280 lin
    331 285 lin
    333 285 lin
    SEA

    321 288 gm  % MIC -> UPP land bridge
    315 297 lin
    landconnect

    319 296 gm  % UPP ^ LMI ^ LHU
    321 294 lin % LMI ^ MIC ^ LHU
    internal

    321 297 gm  % LHU ^ ONT ^ UPP
    320 299 lin % LHU ^ ONT ^ LSU
    RIVER

    % Lake Superior
    320 299 gm  % LHU ^ ONT ^ LSU
    318 303 lin % LSU | ONT
    315 307 lin % LSU ^ ONT ^ WON
    310 306 lin % LSU | WON
    306 311 lin
    303 309 lin
    298 311 lin
    299 307 lin
    294 303 lin % MIN ^ WON ^ LSU
    284 293 lin % MIN ^ LSU ^ MIL
    290 295 lin % LSU | MIL
    293 293 lin % LSU ^ MIL ^ UPP
    301 301 lin % LSU | UPP
    304 301 lin
    301 298 lin
    306 296 lin
    312 298 lin
    316 299 lin
    SEA
} def


/usaECoast {
    402 323 lin % NBR ^ MAI ^ MAB
    405 320 lin % MAB | MAI
    393 307 lin
    393 302 lin % MAI ^ VEM ^ MAB
    396 297 lin % VEM ^ MAS ^ MAB
    399 295 lin % MAB | MAS
    398 292 lin % MAB ^ MAS ^ MAY
    392 289 lin % MAS ^ MAY ^ NYC
    383 283 lin % MAY ^ NYC ^ NJE
%    383 279 lin % LONG ISLAND
%    383 281 lin
%    392 286 lin
%    391 284 lin
    383 278 lin % MAY | NJE
    386 273 lin
    384 267 lin
    380 268 lin % MAY ^ NJE ^ WDC
    385 262 lin % MAY ^ WDC ^ CHB
    384 259 lin % CHB | WDC
    382 260 lin
    380 261 lin
    378 258 lin % CHB ^ WDC ^ VIR
    378 261 lin
    380 253 lin % CHB | VIR
    385 250 lin % CHB ^ VIR ^ NCA
    390 243 lin % CHB ^ NCA ^ ECO
    386 237 lin % ECO | NCA
    381 235 lin
    379 229 lin
    376 227 lin % ECO ^ NCA ^ SCA
    372 219 lin % ECO | SCA
    366 212 lin % ECO ^ SCA ^ GEO
    365 203 lin % ECO ^ GEO ^ JAC
    370 197 lin % ECO | JAC
    376 192 lin
    378 188 lin % ECO ^ JAC ^ MIA
    383 180 lin % ECO ^ MIA ^ SOF
    384 172 lin % SOF | MIA
    379 169 lin
    377 173 lin
    373 173 lin
    370 177 lin % SOF ^ MIA ^ APB
    366 179 lin % MIA ^ APB ^ TAM
    362 183 lin % APB | TAM
    362 186 lin
    356 192 lin % APB ^ TAM ^ FPA
    349 192 lin % APB | FPA
    344 188 lin
    337 192 lin
    330 189 lin
    330 191 lin % APB ^ FPA ^ DSO
    319 186 lin % APB ^ DSO ^ LOU
    315 185 lin % APB | LOU
    321 181 lin
    318 179 lin
    315 181 lin
    310 178 lin % APB ^ LOU ^ GOM
    302 182 lin % GOM | LOU
    299 180 lin
    289 180 lin % GOM ^ LOU ^ HOU
    283 177 lin % GOM | HOU
    279 172 lin
    272 169 lin % GOM ^ HOU ^ SAN
    267 161 lin
    269 154 lin % SAN ^ NLE ^ GOM
} def


/mississippi {
    319 186 gm  % APB ^ DSO ^ LOU
    315 188 lin % LOU | DSO
    314 192 lin
    302 190 lin
    302 194 lin
    305 198 lin
    303 203 lin % LOU ^ DSO ^ ARK
    302 208 lin % ARK | DSO
    307 217 lin % ARK ^ DSO ^ TEN
    306 220 lin % ARK | TEN
    309 223 lin % ARK ^ TEN ^ MIS
    309 227 lin % TEN ^ MIS ^ KEN
    311 229 lin % MIS | KEN
    309 231 lin % MIS ^ KEN ^ CHI
    307 234 lin % MIS | CHI
    302 237 lin
    303 241 lin
    302 243 lin
    298 242 lin
    RIVER
} def


/usaWInternal {
    % Texas Border
    207 192 gm  % CHH ^ NME ^ WTE
    207 193 lin % NME | WTE
    230 193 lin
    230 201 lin % NME ^ WTE ^ DAL
    230 221 lin % NME ^ DAL ^ OKL
    248 221 lin % DAL | OKL
    248 207 lin
    252 207 lin
    260 206 lin
    262 204 lin
    266 203 lin
    272 204 lin
    274 206 lin
    278 206 lin
    282 205 lin % DAL ^ OKL ^ ARK
    285 205 lin % DAL | ARK
    286 201 lin % DAL ^ ARK ^ LOU
    286 194 lin % DAL | LOU
    290 190 lin % DAL ^ LOU ^ HOU
    290 185 lin % HOU | LOU
    289 180 lin % GOM ^ LOU ^ HOU
    internal

    % Texas Provinces
    230 201 gm  % NME ^ WTE ^ DAL
    247 190 lin % DAL ^ WTE ^ SAN
    262 190 lin % DAL ^ SAN ^ HOU
    290 190 lin % DAL ^ LOU ^ HOU
    internal

    242 175 gm  % COA ^ WTE ^ SAN
    247 190 lin % DAL ^ WTE ^ SAN
    internal
    
    262 190 gm  % DAL ^ SAN ^ HOU
    272 169 lin % GOM ^ HOU ^ SAN
    internal    

    % West Minn -> Ark
    258 306 gm  % DAK ^ MAN ^ MIN
    263 281 lin % DAK | MIN
    264 268 lin % DAK ^ MIN ^ IOW
    265 262 lin % DAK ^ IOW ^ NEB
    270 249 lin % NEB ^ IOW ^ MIS
    273 246 lin % NEB ^ MIS ^ KAN
    276 245 lin % KAN | MIS
    274 243 lin
    277 240 lin
    278 227 lin % KAN ^ MIS ^ OKL
    279 223 lin % MIS ^ OKL ^ ARK    
    282 205 lin % DAL ^ OKL ^ ARK
    internal

    264 268 gm % DAK ^ MIN ^ IOW
    291 272 lin % IOW ^ MIL ^ MIN
    internal

    270 249 gm  % NEB ^ IOW ^ MIS
    293 252 lin % MIS ^ IOW ^ CHI
    internal    

    279 223 gm  % MIS ^ OKL ^ ARK    
    307 227 lin % MIS | ARK
    304 223 lin
    309 223 lin % ARK ^ TEN ^ MIS
    internal
        
    286 201 gm  % DAL ^ ARK ^ LOU
    303 203 lin % LOU ^ DSO ^ ARK
    internal

    % California/Nevada/Utah North Border
    119 277 gm  % WCO ^ SFR ^ ORE
    141 270 lin % SFR ^ ORE ^ NEV
    151 267 lin % ORE | NEV
    157 265 lin % ORE ^ NEV ^ IDA
    172 262 lin % NEV ^ IDA ^ UTA
    188 260 lin % IDA ^ UTA ^ WYO
    187 252 lin % UTA | WYO
    197 251 lin % UTA ^ WYO ^ COL
    217 250 lin % WYO | COL
    225 250 lin % WYO ^ COL ^ NEB
    236 250 lin % COL | NEB
    236 243 lin % COL ^ NEB ^ KAN
    248 243 lin % NEB | KAN
    260 244 lin % NEB | KAN
    273 246 lin % NEB ^ MIS ^ KAN
    internal
    
    % Arizona/New Mexico/Oklahoma North Border
    167 230 gm  % NEV ^ ARI ^ UTA
    187 227 lin % ARI | UTA
    195 226 lin % ARI ^ UTA ^ COL
    200 225 lin % ARI ^ COL ^ NME
    230 224 lin % COL ^ NME ^ OKL
    236 224 lin % COL ^ OKL ^ KAN
    248 224 lin % KAN | OKL
    264 225 lin
    278 227 lin % KAN ^ MIS ^ OKL
    internal
    
    236 243 gm  % COL ^ NEB ^ KAN
    236 224 lin % COL ^ OKL ^ KAN
    internal

    197 251 gm  % UTA ^ WYO ^ COL
    195 226 lin % ARI ^ UTA ^ COL
    internal

    167 230 gm  % NEV ^ ARI ^ UTA
    172 262 lin % NEV ^ IDA ^ UTA
    internal

    141 270 gm  % SFR ^ ORE ^ NEV
    136 250 lin % SFR | NEV
    143 240 lin % SFR ^ NEV ^ LAN
    154 227 lin % NEV ^ LAN ^ SDI
    161 218 lin % NEV ^ SDI ^ ARI
    162 214 lin % SDI | ARI
    160 208 lin
    157 206 lin
    159 206 lin 
    158 203 lin % BAJ ^ SDI ^ ARI
    internal

    167 230 gm  % NEV ^ ARI ^ UTA
    166 225 lin
    161 225 lin % NEV | ARI
    161 218 lin % NEV ^ SDI ^ ARI
    internal
    
    143 240 gm  % SFR ^ NEV ^ LAN
    122 235 lin % WCO ^ LAN ^ SFR
    internal

    154 227 gm  % NEV ^ LAN ^ SDI
    140 213 lin % GSC ^ SDI ^ LAN
    internal    

    230 224 gm  % COL ^ NME ^ OKL
    230 221 lin % NME ^ DAL ^ OKL
    internal

    200 225 gm  % ARI ^ COL ^ NME
    194 189 lin % ARI ^ CHH ^ NME
    internal    

    168 313 gm  % WAS ^ VAN ^ IDA
    163 296 lin % WAS | IDA
    163 292 lin % WAS ^ IDA ^ ORE
    165 289 lin % IDA | ORE
    163 285 lin
    160 284 lin
    159 281 lin
    157 265 lin % ORE ^ NEV ^ IDA
    internal

    172 312 gm  % VAN ^ IDA ^ MTA
    170 304 lin % IDA | MTA
    171 299 lin
    174 299 lin
    177 294 lin
    174 287 lin
    176 286 lin
    178 287 lin
    181 277 lin
    188 279 lin
    190 277 lin % IDA ^ MTA ^ WYO
    188 260 lin % IDA ^ UTA ^ WYO
    internal

    227 305 gm  % MTA ^ SAS ^ DAK
    226 277 lin % MTA ^ DAK ^ WYO
    225 264 lin % DAK ^ WYO ^ NEB
    225 250 lin % WYO ^ COL ^ NEB
    internal    

    225 264 gm  % DAK ^ WYO ^ NEB
    252 264 lin % DAK | NEB
    254 265 lin
    257 263 lin
    261 264 lin
    265 262 lin % DAK ^ IOW ^ NEB
    internal    

    190 277 gm  % IDA ^ MTA ^ WYO
    190 280 lin % MTA | WYO
    202 278 lin
    226 277 lin % MTA ^ DAK ^ WYO
    internal

    130 303 gm  % ORE ^ SJF ^ WAS
    135 301 lin % ORE | WAS
    136 299 lin
    135 297 lin
    143 296 lin
    155 295 lin
    163 292 lin % WAS ^ IDA ^ ORE
    internal
} def


/usaSEInternal {
    % Florida Internal
    366 179 gm  % APB ^ MIA ^ TAM
    373 180 lin % MIA | TAM
    374 185 lin % MIA ^ TAM ^ JAC
    378 188 lin % ECO ^ JAC ^ MIA
    internal
    
    356 192 gm  % APB ^ TAM ^ FPA
    357 197 lin % TAM ^ FPA ^ JAC
    357 199 lin % FPA ^ JAC ^ GEO
    internal

    330 191 gm  % APB ^ FPA ^ DSO
    327 195 lin % FPA | DSO
    343 198 lin % FPA ^ DSO ^ GEO
    345 197 lin % FPA | GEO
    357 199 lin % FPA ^ JAC ^ GEO
    362 201 lin % JAC | GEO
    362 203 lin
    365 203 lin % ECO ^ GEO ^ JAC
    internal
    
    374 185 gm  % MIA ^ TAM ^ JAC
    357 197 lin % TAM ^ FPA ^ JAC
    internal

    % tennessee south
    307 217 gm  % ARK ^ DSO ^ TEN
    320 219 lin % DSO | TEN
    333 222 lin % DSO ^ TEN ^ GEO
    340 224 lin % TEN ^ GEO ^ NCA
    347 226 lin % GEO ^ NCA ^ SCA
    353 230 lin % NCA | SCA
    361 231 lin
    363 230 lin
    368 232 lin
    376 227 lin % ECO ^ NCA ^ SCA
    internal

    333 222 gm  % DSO ^ TEN ^ GEO
    341 208 lin % DSO | GEO
    341 203 lin
    343 198 lin % FPA ^ DSO ^ GEO
    internal

    347 226 gm  % GEO ^ NCA ^ SCA
    347 224 lin % GEO | SCA
    359 219 lin
    366 212 lin % ECO ^ SCA ^ GEO
    internal

    % tennessee north
    309 227 gm  % TEN ^ MIS ^ KEN
    316 229 lin % TEN | KEN
    316 230 lin
    330 233 lin
    343 236 lin % TEN ^ KEN ^ VIR
    353 239 lin % TEN ^ VIR ^ NCA
    369 244 lin % VIR | NCA
    385 250 lin % CHB ^ VIR ^ NCA
    internal

    353 239 gm  % TEN ^ VIR ^ NCA
    343 229 lin % TEN | NCA
    340 226 lin
    340 224 lin % TEN ^ GEO ^ NCA
    internal

    % Ohio River
    309 231 gm  % MIS ^ KEN ^ CHI
    311 233 lin % KEN | CHI
    313 233 lin
    313 235 lin
    315 238 lin % KEN ^ CHI ^ IND
    321 240 lin % KEN | IND
    327 243 lin
    331 251 lin % KEN ^ IND ^ OHI
    335 249 lin % KEN | OHI
    339 249 lin
    342 250 lin
    345 249 lin % KEN ^ OHI ^ WVA
    346 245 lin % KEN | OHI
    348 244 lin % KEN ^ WVA ^ VIR
    352 243 lin % WVA | VIR
    358 247 lin
    360 255 lin
    363 254 lin
    363 258 lin
    365 263 lin % WVA ^ VIR ^ WDC
    368 262 lin % VIR | WDC
    369 264 lin
    371 264 lin
    373 263 lin
    374 260 lin
    378 258 lin % CHB ^ WDC ^ VIR
    378 261 lin % CHB ^ WDC ^ VIR
    internal    

    343 236 gm  % TEN ^ KEN ^ VIR
    345 240 lin % KEN | VIR
    348 244 lin % KEN ^ WVA ^ VIR
    internal
} def


/usaNEInternal {
    % Upper Missippi
    298 242 gm
    294 246 lin
    293 252 lin % MIS ^ IOW ^ CHI
    294 257 lin % IOW | CHI
    298 259 lin
    299 262 lin
    295 266 lin % IOW ^ CHI ^ MIL
    292 268 lin % IOW | MIL
    291 272 lin % IOW ^ MIL ^ MIN
    290 275 lin % MIL | MIN
    282 279 lin
    281 285 lin
    284 289 lin
    284 293 lin % MIN ^ LSU ^ MIL
    internal

   % Illinois River/Waterway
    302 237 gm
    305 239 lin
    302 257 lin
    311 265 lin
    waterconnect
   
    293 293 gm  % LSU ^ MIL ^ UPP
    295 292 lin % MIL | UPP
    305 290 lin
    307 285 lin % UPP ^ MIL ^ LMI
    internal

    295 266 gm  % IOW ^ CHI ^ MIL
    310 268 lin % MIL ^ LMI ^ CHI
    internal
    
    313 263 gm  % LMI ^ CHI ^ IND
    317 244 lin % CHI | IND
    315 238 lin % KEN ^ CHI ^ IND
    internal

    316 265 gm  % LMI ^ IND ^ MIC
    327 267 lin % MIC ^ IND ^ OHI
    333 269 lin % LER ^ OHI ^ MIC
    internal

    327 267 gm  % MIC ^ IND ^ OHI
    331 251 lin % KEN ^ IND ^ OHI
    internal

    348 274 gm  % LER ^ WPA ^ OHI
    351 266 lin % WPA ^ WVA ^ OHI
    352 261 lin % WPA | WVA
    361 264 lin % WPA ^ WVA ^ WDC
    370 267 lin % WPA ^ WDC ^ PHI
    378 271 lin % WDC ^ PHI ^ NJE
    379 273 lin % PHI | NJE
    379 275 lin
    377 278 lin
    377 282 lin % PHI ^ NJE ^ NYC
    383 283 lin % MAY ^ NYC ^ NJE
    internal    

    378 271 gm  % WDC ^ PHI ^ NJE
    380 268 lin % MAY ^ NJE ^ WDC
    internal

    361 264 gm  % WPA ^ WVA ^ WDC
    365 263 lin % WVA ^ VIR ^ WDC
    internal
    
    351 266 gm  % WPA ^ WVA ^ OHI
    351 259 lin % WVA | OHI
    347 256 lin
    345 249 lin % KEN ^ OHI ^ WVA
    internal

    351 279 gm  % NYS ^ LER ^ WPA
    352 276 lin % NYS | WPA
    358 278 lin % NYS ^ WPA ^ PHI
    374 285 lin % NYS ^ PHI ^ NYC
    382 290 lin % NYS ^ NYC ^ MAS
    390 293 lin % NYC | MAS
    392 289 lin % MAS ^ MAY ^ NYC
    internal

    370 267 gm  % WPA ^ WDC ^ PHI
    358 278 lin % NYS ^ WPA ^ PHI
    internal

    374 285 gm  % NYS ^ PHI ^ NYC
    377 282 lin % PHI ^ NJE ^ NYC
    internal

    % East River | Eire Canal
    384 283 gm
    377 294 lin
    352 280 lin
    waterconnect

    375 308 gm  % BEA ^ NYS ^ VEM
    381 295 lin % NYS ^ VEM ^ MAS
    382 290 lin % NYS ^ NYC ^ MAS
    internal

    381 295 gm  % NYS ^ VEM ^ MAS
    391 299 lin % VEM | MAS
    396 297 lin % VEM ^ MAS ^ MAB
    
    383 314 gm  % BEA ^ VEM ^ MAI
    391 302 lin % VEM | MAI
    393 302 lin % MAI ^ VEM ^ MAB

} def


% Canada


/canWCoast {
    138 324 lin % SJF | VAN
    136 332 lin
    128 338 lin
    125 344 lin % SJF ^ VAN ^ QCS
    129 351 lin % QCS | VAN
    128 357 lin
    124 363 lin
    125 369 lin % QCS ^ VAN ^ ANC
    114 373 lin % QCS | ANC
    115 382 lin % QCS ^ ANC ^ GOA
    114 391 lin % GOA | ANC
    115 399 lin
    113 406 lin
    104 423 lin
     95 432 lin
     90 432 lin
     86 435 lin
     83 434 lin
     76 437 lin
     81 442 lin
     81 445 lin
     71 442 lin
     72 440 lin
     64 438 lin
     58 439 lin
     51 438 lin
     47 440 lin
     40 440 lin
     38 443 lin
     36 438 lin
     33 440 lin
     35 445 lin
     27 444 lin
     28 449 lin
     26 450 lin
     24 448 lin
     19 452 lin
     16 452 lin
     13 455 lin
      8 455 lin % ANC ^ GOA ^ BER
      9 458 lin % BER | ANC
     13 459 lin
     18 454 lin
     19 452 lin
     19 454 lin
     24 454 lin
     28 450 lin
     47 446 lin
     55 446 lin
     58 451 lin
     53 453 lin
     55 455 lin
     53 459 lin
     49 460 lin
     49 463 lin
     55 466 lin
     54 470 lin
     50 472 lin
     53 481 lin
     60 486 lin
     70 488 lin
     74 484 lin
     76 486 lin
     80 481 lin
     82 485 lin
     81 488 lin
     73 497 lin
     78 507 lin
     89 502 lin
     90 499 lin
     93 499 lin
     95 508 lin
     95 514 lin % BER ^ ANC ^ ARO
} def

/canNCoast {
    100 515 lin % ARO | ANC
    104 510 lin
    114 512 lin
    127 508 lin
    132 498 lin
    130 495 lin
    135 492 lin % ARO ^ ANC ^ BEF
    140 482 lin % BEF | ANC
    145 481 lin
    146 475 lin % BEF ^ ANC ^ YUK
    154 466 lin % BEF ^ YUK ^ NWT
    156 463 lin % BEF | NWT
    167 466 lin
    173 463 lin
    176 466 lin
    178 459 lin
    180 458 lin
    183 461 lin
    184 460 lin
    183 457 lin
    188 456 lin
    191 452 lin 
    198 447 lin 
    203 446 lin
    206 442 lin % This part is really Victoria Island, but I wanted to
    203 446 lin % more clearly show that NUN does not border BEF
    201 450 lin
    199 452 lin
    200 459 lin
    198 461 lin
    200 465 lin
    198 468 lin
    202 471 lin
    201 473 lin % Channel between Victoria & Banks Islands
    209 476 lin % Banks Island
    206 482 lin
    201 484 lin
    199 487 lin
    192 488 lin % BEF ^ ARO ^ NWT
    192 483 lin
    185 474 lin
    189 465 lin
    195 466 lin
    197 471 lin
    201 473 lin % (Channel again)
    209 476 lin % Victoria Island (cont)
    213 472 lin
    219 471 lin
    224 474 lin % NWT ^ NUN ^ ARO
    226 473 lin %
    225 476 lin
    229 477 lin
    231 474 lin
    229 470 lin
    226 473 lin
    229 470 lin
    232 456 lin
    238 452 lin
    239 449 lin
    236 446 lin
    235 443 lin
    232 442 lin
    227 444 lin
    226 446 lin
    224 445 lin
    221 444 lin
    219 444 lin
    218 442 lin
    206 442 lin % End of Victoria island (ARO ^ NWT ^ NUN)
    204 438 lin % ARO | NUN
    212 437 lin 
    219 441 lin
    226 443 lin
    229 438 lin
    233 438 lin
    236 435 lin
    245 435 lin
    245 440 lin
    247 439 lin
    249 442 lin
    241 444 lin
    245 450 lin
    253 443 lin
    250 439 lin
    254 438 lin
    256 444 lin
    254 448 lin
    249 452 lin
    248 459 lin
    251 465 lin
    249 479 lin
    259 480 lin
    256 470 lin
    252 465 lin
    261 453 lin
    258 450 lin
    264 450 lin
    262 448 lin
    265 442 lin
    267 442 lin
    268 449 lin
    273 443 lin
    271 440 lin
    276 436 lin
    278 448 lin
    275 455 lin
    284 456 lin
    287 452 lin
    286 445 lin
    290 440 lin
    286 431 lin
    281 430 lin
    277 414 lin
    272 411 lin
    271 404 lin
    264 398 lin
    260 382 lin % NUN ^ HUB ^ MAN
    262 374 lin % HUB | MAN
    267 374 lin
    271 363 lin
    278 365 lin
    284 364 lin % HUB ^ MAN ^ NON
    292 359 lin % HUB | NON
    303 357 lin
    313 359 lin
    317 344 lin
    331 336 lin % HUB ^ NON ^ ABI
    333 344 lin % HUB ^ ABI ^ UNG
    323 358 lin % HUB | UNG
    331 369 lin
    327 381 lin
    318 386 lin
    318 397 lin
    313 401 lin
    310 410 lin
    313 413 lin
    320 413 lin
    323 417 lin
    332 415 lin % HUB ^ UNG ^ SOL
    334 412 lin
    340 415 lin
    347 402 lin
    356 400 lin
    358 408 lin
    356 418 lin % UNG ^ LAB ^ SOL
} def

/canECoast {
    359 417 lin % SOL | LAB
    371 409 lin
    375 409 lin
    380 405 lin
    381 400 lin
    390 398 lin
    398 402 lin
    402 402 lin
    405 397 lin
    409 399 lin
    413 398 lin
    416 394 lin % SOL ^ LAB ^ GSL
    416 385 lin % GSL | LAB
    414 382 lin % GSL ^ LAB ^ COT
    411 380 lin
    410 370 lin
    387 355 lin
    386 347 lin
    382 341 lin % COT ^ GSL ^ QUE
    382 334 lin % GSL ^ QUE ^ GAS
    391 349 lin % GSL | GAS
    395 352 lin
    401 352 lin
    400 346 lin
    396 343 lin % GSL ^ GAS ^ NBR
    400 341 lin
    403 345 lin
    403 339 lin
    412 336 lin % GSL ^ NBR ^ NSC
    421 340 lin % GSL | NSC
    424 341 lin
    422 343 lin
    422 351 lin
    425 348 lin
    429 349 lin % GSL ^ NSC ^ NAO
    428 344 lin % NAO | NSC
    424 341 lin
    426 337 lin
    419 330 lin % NAO ^ NSC ^ MAB
    416 327 lin % MAB | NSC
    414 317 lin
    411 318 lin
    408 321 lin
    412 330 lin
    409 330 lin % MAB ^ NSC ^ NBR
} def


/canInternal {
    384 326 gm  % BEA ^ MAI ^ GAS
    380 327 lin % GAS ^ QUE ^ BEA
    internal

    392 333 gm  % GAS ^ MAI ^ NBR
    392 340 lin % GAS | NBR
    396 343 lin % GSL ^ GAS % NBR

    412 336 gm  % GSL ^ NBR ^ NSC
    409 330 lin % MAB ^ NSC ^ NBR
    internal

    % Labrador
    356 418 gm  % UNG ^ LAB ^ SOL
    364 410 lin % UNG | LAB
    365 405 lin
    370 404 lin
    373 397 lin
    376 395 lin
    379 391 lin
    381 386 lin
    368 384 lin
    366 381 lin
    368 376 lin % UNG ^ LAB ^ COT
    382 366 lin % LAB | COT
    390 368 lin
    411 386 lin
    414 382 lin % GSL ^ LAB ^ COT
    internal

    368 376 gm  % UNG ^ LAB ^ COT
    362 340 lin % UNG ^ COT ^ QUE
    359 336 lin % UNG ^ QUE ^ ABI
    356 332 lin % QUE | ABI
    360 317 lin % QUE ^ ABI ^ MON
    337 321 lin % ABI ^ MON ^ NON
    340 312 lin % MON ^ NON ^ ONT
    326 315 lin % NON ^ ONT ^ WON
    269 338 lin % ONT ^ WON ^ MAN
    internal

    333 344 gm  % HUB ^ ABI ^ UNG
    359 336 lin % UNG ^ QUE ^ ABI
    internal
    
    331 336 gm  % HUB ^ NON ^ ABI
    337 321 lin % ABI ^ MON ^ NON
    internal

    382 341 gm  % COT ^ GSL ^ QUE
    362 340 lin % UNG ^ COT ^ QUE
    internal

    375 320 gm  % QUE ^ BEA ^ MON
    360 317 lin % QUE ^ ABI ^ MON
    internal    
    
    371 309 gm  % MON ^ BEA ^ ONT
    367 309 lin % MON | ONT
    359 305 lin
    346 307 lin
    340 312 lin % MON ^ NON ^ ONT
    internal    

    326 315 gm  % NON ^ ONT ^ WON
    315 307 lin % LSU ^ ONT ^ WON
    internal

    284 364 gm  % HUB ^ MAN ^ NON
    269 338 lin % ONT ^ WON ^ MAN
    264 332 lin % WON | MAN    
    267 309 lin % MAN ^ MIN ^ WON
    internal
   
    146 475 gm  % BEF ^ ANC ^ YUK
    111 421 lin % ANC | YUK
    116 418 lin
    115 417 lin % ANC ^ YUK ^ NBC
    139 404 lin % YUK | NBC
    162 393 lin % YUK ^ NBC ^ NWT
    174 389 lin % NBC ^ NWT ^ CGY
    208 382 lin % NWT ^ CGY ^ SAS
    232 381 lin % NWT ^ SAS ^ NUN
    236 381 lin % SAS ^ NUN ^ MAN
    260 382 lin % NUN ^ HUB ^ MAN
    internal    

    180 310 gm  % VAN ^ MTA ^ CGY
    179 321 lin % VAN | CGY
    162 345 lin
    166 359 lin % VAN ^ CGY ^ NBC
    174 389 lin % NBC ^ NWT ^ CGY
    internal
    
    199 307 gm  % MTA ^ CGY ^ SAS
    208 382 lin % NWT ^ CGY ^ SAS
    internal
    
    240 305 gm  % SAS ^ DAK ^ MAN
    236 381 lin % SAS ^ NUN ^ MAN
    internal

    232 381 gm  % NWT ^ SAS ^ NUN
    232 416 lin % NWT | NUN
    215 425 lin
    207 425 lin
    194 436 lin
    206 442 lin
    221 451 lin
    224 474 lin % NWT ^ NUN ^ ARO
    internal    

    115 417 gm  % ANC ^ YUK ^ NBC
    116 406 lin % ANC | NBC
    121 406 lin
    125 407 lin
    127 394 lin
    125 385 lin
    131 377 lin
    129 373 lin % ANC ^ NBC ^ VAN
    125 369 lin % QCS ^ VAN ^ ANC
    internal

    129 373 gm  % ANC ^ NBC ^ VAN
    166 359 lin % VAN ^ CGY ^ NBC
    internal    
    154 466 gm  % NWT ^ YUK ^ BEF
    148 454 lin
    154 450 lin
    151 443 lin
    153 438 lin
    149 435 lin
    153 425 lin
    150 414 lin
    156 406 lin
    154 402 lin
    162 400 lin
    162 393 lin % YUK ^ NBC ^ NWT
    internal
} def

% Oceans


/southPacific {
    428  10 gm  % LIM ^ GOG ^ GAL
    367  23 lin % GOG ^ GAL ^ GOF
    326  38 lin % GAL ^ GOF ^ COM
    319  22 lin % GAL ^ COM ^ SPO
    188  72 lin % COM ^ SPO ^ MPO
    104  74 lin % MPO ^ SPO ^ HAW
     80  66 lin % SPO ^ HAW ^ SWP
     36  87 lin % SWP | HAW
     53 122 lin % SWP ^ HAW ^ NPO
     91 104 lin % HAW ^ NPO ^ MPO
    147 172 lin % MPO ^ NPO ^ BAJ
    internal

    325  87 gm  % COM ^ GUT ^ GOT
    312  59 lin % COM | GOT
    284  56 lin
    271  71 lin
    276  87 lin % GOT ^ COM ^ OAX
    internal

     91 104 gm  % HAW ^ NPO ^ MPO
    104  74 lin % MPO ^ SPO ^ HAW
    internal

    319  22 gm  % GAL ^ COM ^ SPO
    301   0 lin % GAL | SPO
    internal

     80  66 gm  % SPO ^ HAW ^ SWP
    122   0 lin % SWP | SPO
    internal

     53 122 gm  % SWP ^ HAW ^ NPO
      0 167 lin % SWP | NPO
    internal

    326  38 gm  % GAL ^ GOF ^ COM
    338  86 lin % GOF ^ ELS ^ COM
    internal

    359  83 gm  % NIC ^ COB ^ GOF
    359  45 lin % GOF | COB
    380  39 lin % GOF ^ COB ^ GOG
    400  50 lin % COB ^ GOG ^ GOP
    404  69 lin % PAN ^ GOP ^ COB
    internal

    400  50 gm  % COB ^ GOG ^ GOP
    442  53 lin % CAL ^ GOG ^ GOP
    internal

    380  39 gm  % GOF ^ COB ^ GOG
    367  23 lin % GOG ^ GAL ^ GOF
    internal

    171 146 gm  % GCA ^ BAJ ^ MPO
    171 110 lin % GCA | MPO
    196 101 lin % GCA ^ MPO ^ COM
    210 115 lin % COM ^ GUA ^ GCA
    internal

    196 101 gm  % GCA ^ MPO ^ COM
    188  72 lin % COM ^ SPO ^ MPO
    internal

    % Hawaiian Islands
     86  83 gm  % Big Island
     89  86 lin
     93  86 lin
     94  89 lin
     92  91 lin
     84  94 lin
     85  91 lin
     82  90 lin
     84  85 lin
    ISLAND

     84  97 gm  % Maui/Molokai
     79  95 lin
     77  99 lin
     74  97 lin
     75 100 lin
     72 101 lin
     76 101 lin
    ISLAND

     69 101 gm  % Oahu
     65 101 lin
     64 104 lin
     67 105 lin
     70 103 lin
    ISLAND

     56 109 gm  % Kauai
     56 106 lin
     53 106 lin
     51 108 lin
     53 109 lin
    ISLAND
} def


/northPacific {
     95 514 gm  % BER ^ ANC ^ ARO
     80 534 lin % BER | ARO
    internal

      8 455 gm  % ANC ^ GOA ^ BER
      0 455 lin % GOA | BER
    internal
      
    115 382 gm  % QCS ^ ANC ^ GOA
     80 389 lin % QCS | GOA
     77 357 lin
     92 343 lin % QCS ^ GOA ^ SJF
     87 330 lin % GOA | SJF
     90 313 lin % GOA ^ SJF ^ WCO
     73 309 lin % GOA ^ WCO ^ NPO
     70 272 lin % WCO | NPO
    103 211 lin % WCO ^ NPO ^ GSC
    115 187 lin % NPO | GSC
    146 191 lin % NPO ^ GSC ^ BAJ
    internal    

    125 344 gm  % SJF ^ VAN ^ QCS
     92 343 lin % QCS ^ GOA ^ SJF
    internal

      0 314 gm
     73 309 lin % GOA ^ WCO ^ NPO
    internal

    126 291 gm  % WCO ^ ORE ^ SJF
     91 299 lin % WCO | SJF
     90 313 lin % GOA ^ SJF ^ WCO
    internal
    
    125 221 gm  % GSC ^ LAN ^ WCO
    103 211 lin % WCO ^ NPO ^ GSC
    internal

     % Pribilof Island (Alaska)
     47 485 gm
     51 483 lin
     51 481 lin
     48 477 lin
     46 479 lin
     46 484 lin
     ISLAND

     % Kodiak Island (Alaska)
     73 437 gm
     72 432 lin
     69 434 lin
     67 430 lin
     61 431 lin
     58 430 lin
     55 432 lin
     58 433 lin
     60 437 lin
     ISLAND

     % Queen Charlotte Island (BC)
     116 352 gm
     113 364 lin
     115 370 lin
     120 366 lin
     117 363 lin
     117 359 lin
     115 357 lin
     ISLAND

     % Vancouver Island (BC)
     122 339 gm
     123 335 lin
     129 325 lin
     137 317 lin
     140 317 lin
     138 321 lin
     134 325 lin
     133 332 lin
     127 336 lin
     125 339 lin
     ISLAND
} def


/arctic {
    % Greenland
    395 532 gm  % NAO | GRE
    399 523 lin
    400 514 lin
    397 503 lin
    405 497 lin
    407 487 lin
    414 484 lin
    419 474 lin
    409 472 lin
    405 467 lin % GRE ^ NAO ^ SOL
    391 470 lin
    379 475 lin % GRE ^ SOL ^ BAF
    361 487 lin
    358 494 lin
    360 500 lin
    355 505 lin
    346 503 lin
    344 505 lin
    352 508 lin
    343 511 lin
    341 505 lin
    337 506 lin
    335 513 lin
    321 521 lin
    313 523 lin
    307 521 lin
    303 517 lin
    298 517 lin
    294 520 lin % GRE ^ BAF ^ ARO
    297 523 lin
    292 525 lin
    289 524 lin
    287 526 lin
    291 532 lin
    ISLAND

    % Godhavn (Greenland)
    346 501 gm
    355 501 lin
    353 497 lin
    350 496 lin
    347 498 lin
    ISLAND

    405 467 gm  % GRE ^ NAO ^ SOL
    439 385 lin % SOL ^ NFL ^ NAO
    internal

    379 475 gm  % GRE ^ SOL ^ BAF
    366 446 lin % SOL | BAF  
    342 447 lin % NUN ^ SOL ^ BAF
    internal

    % Baffin Island (Nunavut)
    342 447 gm  % NUN ^ SOL ^ BAF
    340 460 lin % BAF | NUN
    327 463 lin
    323 461 lin
    319 462 lin
    318 465 lin
    320 468 lin
    311 474 lin
    305 474 lin
    302 477 lin
    296 476 lin
    292 479 lin
    285 479 lin
    284 475 lin
    282 474 lin
    281 477 lin
    279 477 lin
    278 481 lin
    281 477 lin
    289 481 lin
    284 484 lin
    278 483 lin
    278 481 lin
    276 483 lin
    271 478 lin
    269 481 lin % BAF ^ NUN ^ ARO
    265 479 lin
    262 476 lin
    261 470 lin
    263 461 lin
    268 456 lin
    275 455 lin % Nearest point to Nunavut Mainland
    283 457 lin % HUD | NUN
    291 460 lin
    296 459 lin
    299 453 lin
    301 456 lin
    308 454 lin
    313 448 lin
    313 444 lin
    310 440 lin
    313 435 lin
    308 432 lin
    304 432 lin
    303 427 lin
    307 424 lin
    310 424 lin
    313 428 lin
    320 429 lin
    327 424 lin
    337 423 lin % NUN ^ HUD ^ SOL
    346 424 lin
    348 431 lin
    346 436 lin
    341 441 lin
    337 442 lin
    339 447 lin
    ISLAND

    323 404 gm  % NUN -> UNG land bridge
    319 438 lin
    landconnect

    332 415 gm  % HUB ^ UNG ^ SOL
    337 423 lin % NUN ^ HUD ^ SOL
    internal

    294 520 gm  % GRE ^ BAF ^ ARO
    271 510 lin % ARO | BAF
    269 481 lin % BAF ^ NUN ^ ARO
    internal

    % Little island off of Baffin Island
    299 451 gm
    301 453 lin
    304 452 lin
    305 448 lin
    305 446 lin
    301 444 lin
    299 446 lin
    ISLAND

    % Akimiski Island (Hudson Bay)
    318 345 gm
    324 344 lin
    322 347 lin
    319 347 lin
    ISLAND

    % Belcher Island (Hudson Bay)
    319 366 gm
    320 371 lin
    323 372 lin
    324 369 lin
    323 367 lin
    ISLAND

    % Mansel Island (Hudson Bay)
    307 404 gm
    307 409 lin
    305 410 lin
    304 407 lin
    306 404 lin
    ISLAND

    % Coats Island (Hudson Bay)
    292 406 gm
    294 404 lin
    296 405 lin
    298 409 lin
    297 411 lin
    293 409 lin
    ISLAND

    % Southampton Island (Hudson Bay)
    281 426 gm
    283 414 lin
    280 412 lin
    280 411 lin
    285 413 lin
    286 409 lin
    288 410 lin
    292 417 lin
    295 415 lin
    300 415 lin
    301 419 lin
    284 425 lin
    283 429 lin
    ISLAND

    % Prince of Wales Island (Nunavut)
    244 460 gm
    248 464 lin
    248 467 lin
    245 477 lin
    242 476 lin
    238 477 lin
    237 471 lin
    234 470 lin
    236 465 lin
    239 465 lin
    242 460 lin
    ISLAND

    135 492 gm  % ARO ^ ANC ^ BEF
    167 507 lin % ARO | BEF
    192 488 lin % BEF ^ ARO ^ NWT
    internal
   
} def

% <???>


/atlantic {
    %Newfoundland
    423 391 gm  % SOL | NFL
    427 376 lin
    428 382 lin
    430 383 lin
    431 380 lin
    439 385 lin % SOL ^ NFL ^ NAO
    440 384 lin % NAO | NFL
    441 381 lin
    445 383 lin
    445 377 lin
    448 381 lin
    451 379 lin
    453 371 lin % NAO ^ NFL ^ GSL
    449 369 lin % GSL | NFL
    445 374 lin
    443 364 lin
    441 364 lin
    442 370 lin
    427 359 lin
    424 360 lin
    426 366 lin
    420 382 lin
    420 387 lin % GSL ^ NFL ^ SOL
    421 390 lin
    ISLAND

    % Anticosti Island (Cote-Nord)
    395 356 gm
    400 355 lin
    410 360 lin
    406 361 lin
    403 360 lin
    ISLAND

    % Prince Edward Island (New Brunswick)
    408 343 gm
    407 339 lin
    410 337 lin
    418 340 lin
    419 344 lin
    414 340 lin
    409 340 lin
    ISLAND

    416 394 gm  % SOL ^ LAB ^ GSL
    420 387 lin % GSL ^ NFL ^ SOL
    internal
    
    429 349 gm  % GSL ^ NSC ^ NAO
    446 353 lin % GSL | NAO
    453 371 lin % NAO ^ NFL ^ GSL
    internal

    419 330 gm  % NAO ^ NSC ^ MAB
    449 309 lin % NAO ^ MAB ^ MAO
    444 286 lin % MAB ^ MAO ^ MAY
    398 292 lin % MAB ^ MAS ^ MAY
    internal
    
    449 309 gm  % NAO ^ MAB ^ MAO
    494 338 lin % NAO | MAO
    internal

    444 286 gm  % MAB ^ MAO ^ MAY
    452 249 lin % BET ^ MAY ^ MAO
    
    
    385 262 gm  % MAY ^ WDC ^ CHB
    427 262 lin % MAY | CHB
    427 243 lin % MAY ^ CHB ^ ECO
    390 243 lin % CHB ^ NCA ^ ECO
    internal
    

    399 160 gm  % SOF ^ CAM ^ BET
    406 174 lin % SOF ^ BET ^ ECO
    448 243 lin % BET ^ ECO ^ MAY
    452 249 lin % BET ^ MAY ^ MAO
    457 257 lin % BET ^ MAO ^ SOS
    469 170 lin % DOM ^ SOS ^ BET
    internal

    457 257 gm  % BET ^ MAO ^ SOS
    494 257 lin % MAO | SOS
    internal
    
    427 243 gm  % MAY ^ CHB ^ ECO
    448 243 lin % BET ^ ECO ^ MAY
    internal
    
    383 180 gm  % ECO ^ MIA ^ SOF
    406 174 lin % SOF ^ BET ^ ECO
    internal

} def


/caribbean {
    % Gulf of Campeche
    268 143 gm  % NLE ^ GOM ^ GOC
    296 142 lin % GOC | GOM
    320 130 lin % GOC ^ YUC ^ GOM
    internal

    % Gulf of Honduras
    344 128 gm  % SOY ^ YUC ^ GOH
    367 135 lin % SOY ^ GOH ^ WCS
    370 110 lin % GOH ^ HON ^ WCS
    internal

    % Gulf of Mosquitos / South Caribbean
    382 100 gm  % WCS ^ NIC ^ GOMO
    413 103 lin % WCS ^ GOMO ^ SCS
    438 121 lin % WCS ^ SCS ^ ECS
    451 129 lin % SCS | ECS
    477 134 lin
    483 124 lin % VEN ^ SCS ^ ECS
    internal

    413 103 gm  % WCS ^ GOMO ^ SCS
    422  88 lin % PAN ^ GOMO ^ SCS
    internal

    % Haiti / Dominican Republic
    440 150 gm  % CAT ^ ECS ^ HAI
    445 150 lin % ECS | HAI
    457 156 lin % HAI ^ ECS ^ DOM
    461 154 lin % DOM ^ ECS ^ LES
    466 162 lin % LES | DOM
    477 168 lin
    479 172 lin % DOM ^ LES ^ SOS
    469 170 lin % DOM ^ SOS ^ BET
    453 165 lin % DOM ^ BET ^ HAI
    442 160 lin % HAI ^ BET ^ CAT
    453 157 lin % CAT | HAI
    ISLAND

    457 156 gm  % HAI ^ ECS ^ DOM
    453 165 lin % DOM ^ BET ^ HAI
    internal

    479 172 gm  % DOM ^ LES ^ SOS
    494 174 lin % LES | SOS
    internal

    461 154 gm  % DOM ^ ECS ^ LES
    486 132 lin % VEN ^ SCS ^ LES
    internal

    434 159 gm  % HOL ^ CAT ^ BET
    442 160 lin % HAI ^ BET ^ CAT
    internal

    440 150 gm  % CAT ^ ECS ^ HAI
    439 135 lin % CAT ^ KIN ^ ECS
    internal

    432 125 gm  % KIN ^ ECS ^ WCS
    438 121 lin % WCS ^ SCS ^ ECS
    internal

    367 135 gm  % SOY ^ GOH ^ WCS
    363 144 lin % WCS ^ HAV % SOY
    internal

    310 178 gm  % APB ^ LOU ^ GOM
    319 167 lin % APB | GOM
    355 165 lin % APB ^ GOM ^ SOF
    370 177 lin % SOF ^ MIA ^ APB
    internal

    355 165 gm  % APB ^ GOM ^ SOF
    361 161 lin % GOM ^ SOF ^ SOY
    371 154 lin % SOY ^ HAV ^ SOF
    internal

    361 161 gm  % GOM ^ SOF ^ SOY
    338 153 lin % GOM | SOY
    336 135 lin % YUC ^ GOM ^ SOY
    internal
} def


/cuba {
    % Cuba
    434 159 gm  % HOL ^ CAT ^ BET
    423 149 lin % CAT | HOL
    413 149 lin
    415 151 lin
    408 151 lin % CAT ^ HOL ^ CAM
    404 151 lin % CAT | CAM
    399 153 lin
    398 152 lin
    395 150 lin % CAT ^ CAM ^ WCS
    389 149 lin % CAM ^ WCS ^ HAV
    377 149 lin % WCS | HAV
    363 144 lin % WCS ^ HAV ^ SOY
    364 151 lin
    371 154 lin % SOY ^ HAV ^ SOF
    386 160 lin % SOF | HAV
    393 160 lin % SOF ^ HAV ^ CAM
    399 160 lin % SOF ^ CAM ^ BET
    410 160 lin % CAM ^ HOL ^ BET
    424 161 lin % BET | HOL
    ISLAND

    389 149 gm  % CAM ^ WCS ^ HAV
    393 160 lin % SOF ^ HAV ^ CAM
    internal

    408 151 gm  % CAT ^ HOL ^ CAM
    410 160 lin % CAM ^ HOL ^ BET
    internal

    % Jamaica
    418 124 gm  % KIN ^ WCS ^ CAT
    427 134 lin % CAT | KIN
    439 135 lin % CAT ^ KIN ^ ECS
    432 125 lin % KIN ^ ECS ^ WCS
    ISLAND

    % Cayman Trench
    418 124 gm  % KIN ^ WCS ^ CAT
    398 124 lin % CAT | WCS
    395 150 lin % CAT ^ CAM ^ WCS
    internal
} def




